/* 
		@parms url 接口地址
		@parms method 请求方式
		@parms data 参数
		@parms isUpload 默认false 是否上传
 */

const BASE_URL = "https://www.chuanjianbao.com/buildtreasure" //公共请求头
// const BASE_URL = "http://192.168.102.80:8080/buildtreasure" //公共请求头 
// const TOKEN = uni.getStorageSync('TOKEN') //TOKEN

const request = (url, method, data) => {
	return new Promise((resolve, reject) => {
		uni.request({
			url: BASE_URL + url, //仅为示例，并非真实接口地址。
			data: data,
			method: method,
			header: { //请求头可自定义
				'Content-Type': 'application/json;charset=UTF-8',
				// 'X-Access-Token': TOKEN
				'Cookie': 'JSESSIONID=' + uni.getStorageSync('sessionId')
			},
			success: (res) => { //具体捕获请看自己接口返回的形式
				// 限制最多打开10个页面，防止卡死
				if (res.data.code == 200) {

					var pages = getCurrentPages();
					if (pages.length == 10) {
						wx.showToast({
							title: "页面打开太多，请回退关闭几个页面",
							icon: 'none',
							duration: 2000
						})
						setTimeout(() => {
							wx.navigateBack({

							})
						}, 2000)
						return;
					}
					// 接口成功后操作
					resolve(res)
				} else {
					// 获取提示信息字典
					let backinfo = uni.getStorageSync('backInfo')
					let dat = res.data.data
					if (dat != null && backinfo.data[dat] != undefined) {
						uni.showModal({
							title: '提示',
							showCancel: false,
							content: backinfo.data[dat],
							success(res) {
								if (res.confirm) {} else if (res.cancel) {}
							}
						})
					} else {
						uni.showModal({
							title: '提示',
							showCancel: false,
							content: res.data.msg,
							success(res) {
								if (res.confirm) {} else if (res.cancel) {}
							}
						})
					}

				}
				if (res.statusCode == 401) {
					uni.showModal({
						title: "温馨提示",
						content: '登录已过期,请重新登录',
						cancelText: "取消",
						confirmText: "确定",
						confirmColor: "#815EC9",
						showCancel: false,
						success: (res) => {
							if (res.confirm) {
								uni.redirectTo({
									url: '/pages/login/login'
								})
							} else if (res.cancel) {}
						}
					});

				}
			},
			fail(error) {
				reject(error)
			},
			complete() {

			}
		});

	})
}

export default {
	request //向外暴露request
}
